

Var mySheet:Sheet
Var pattCount:Int
Var f:Byte
Var g:Byte
Var mx:Int
Var my:Int
Var yu:String

Var sx:Int = 100
Var sy:Int = 100

// End declares

Function Initialize:Void()
	// Initialize G9K App
	
	;Clear screen
	For f=0 To 63
		For g=0 To 63
			Fore.Map.Set 0,f,g
		Next
	Next
	;Load Sprites
	pattCount=Fore.Pattern.Load(App.Path+"sprites1.qpt",0,16)
	Ink.Palette.Set 2,16
	Sprite.Display.Set 0,0
	Sprite.Palette.Set 0,2
	Sprite.Pattern.Set 0,2

	Sprite.Display.Set 1,0
	Sprite.Palette.Set 1,2
	Sprite.Pattern.Set 1,22
	
	;Load Fore ground Font
	pattCount=Fore.Pattern.Load(App.Path+"font1.qpt",1024,32)
	Ink.Palette.Set 1,32
	Fore.Palette.Set 1
	;Load Back font
	pattCount=Back.Pattern.Load(App.Path+"font1.qpt",1024,0)
	Ink.Palette.Set 0,0
	Back.Palette.Set 0

	Fore.Print.Font 1024
	Fore.Print.Pos 1,12	
	Fore.Print.String "We are able to print lots and lots of text even some that goes off the screen and then wraps back onto it!!!!"

	Back.Print.Font 1024	
EndF

Function Main:Void()
	// Main Game Loop
	BackColour.Set 0
	mx=Mouse.X
	my=Mouse.Y

	Back.Print.Pos 8,5
	Back.Print.String "Mouse:"+Str(mx)+"/"+Str(my)+" "
	yu=""
	

	Sprite.Position.Set 0,mx,my
	Back.Scroll Shr2(mx),Shr2(my)
	Fore.Scroll Shr1(mx),Shr1(my)

	If sx<mx Then
		sx=sx+1
	Else
		sx=sx-1
	EndIf
	If sy<my Then
		sy=sy+1
	Else
		sy=sy-1
	EndIf
	Sprite.Position.Set 1,sx,sy

	If Mouse.Key=1 Then
		App.Exit
	EndIf
	Sprite.Refresh
	BackColour.Set 1
EndF

